home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Gekkan Dennou Club 142
/
Gekkan Dennou Club - 2000.3 Vol. 142 (Japan).7z
/
Gekkan Dennou Club - 2000.3 Vol. 142 (Japan) (Track 1).bin
/
tools
/
s_tool
/
jxscan.c
< prev
next >
Wrap
Text File
|
1999-06-01
|
1KB
|
78 lines
#include <TNB.H>
#define BUSYS(MM) while( (MM)==8 )
int main()
{
int i,j,m,n,id,l,oid,d,jx;
UNchar buf[128];
UNchar *s;
printf("X68k JX SCANNER CONNECT CHECKER Version 0.00 Copyright 1998 TNB製作所\n");
l=(TWOSCHK()==-2)?15:7;
for(d=0;d<=l;d++){
id=d;
//---- inquiry チェック
BUSYS( i=_scsi_inquiry(36,id,buf) );
if ( i<0 )
continue;
if ( i!=0 ){
//printf("inquiryでエラー(%d)\n",i);
if ( i==2 ){
//---- dummy 発行
BUSYS( i=_scsi_request( 22,id,buf) );
}
continue;
}
if ( buf[0]!=0x06 )
continue;
if ( strncmp(&buf[8],"SHARP",5)!=0 )
continue;
jx=999;
if ( strncmp(&buf[16],"JX250",5)==0 ){
jx=250;
s="250";
} elif ( strncmp(&buf[16],"JX350",5)==0 ){
jx=350;
s="350";
} elif ( strncmp(&buf[16],"JX270",5)==0 ){
jx=270;
s="270";
} elif ( strncmp(&buf[16],"JX330",5)==0 ){
jx=330;
s="330";
} elif ( strncmp(&buf[16],"JX325",5)==0 ){
jx=325;
s="325";
} elif ( strncmp(&buf[16],"JX-325",6)==0 ){
jx=325;
s="325";
}
if ( jx==999 )
continue;
//---- JXスキャナを発見
//---- dummy 発行
BUSYS( i=_scsi_request( 22,id,buf) );
printf(" JX-%s を ID %d に見つけました。\n",s,id);
return(jx);
}
printf(" ありませんでした。\n");
return(-1);
}
asm("
_TWOSCHK:
move.l #$001E,d1
moveq #$f5,d0
trap #15
rts
_TW_CALL:
movem.l d3-d4,-(sp)
move.l 4+8(sp),d1
move.l 8+8(sp),d4
moveq #$f5,d0
trap #15
movem.l (sp)+,d3-d4
rts
");